Require setuptools for pkg_resources

In 67645a46eb the requirement on
setuptools was removed in favor of the version implementation in
python-jenkins. However, other code (regsitry.py, xml_config.py) is
still using pkg_resources, which leads to errors like this:

    % jenkins-jobs
    ERROR:stevedore.extension:Could not load 'delete': No module named 'pkg_resources'
    ERROR:stevedore.extension:Could not load 'delete-all': No module named 'pkg_resources'
    ERROR:stevedore.extension:Could not load 'get-plugins-info': No module named 'pkg_resources'
    ERROR:stevedore.extension:Could not load 'list': No module named 'pkg_resources'
    ERROR:stevedore.extension:Could not load 'test': No module named 'pkg_resources'
    ERROR:stevedore.extension:Could not load 'update': No module named 'pkg_resources'
    Traceback (most recent call last):
      File "/tmp/tmp.qQ9GsQCSeH/venv/bin/jenkins-jobs", line 8, in <module>
        sys.exit(main())
                 ^^^^^^
      File "/tmp/tmp.qQ9GsQCSeH/venv/lib64/python3.12/site-packages/jenkins_jobs/cli/entry.py", line 177, in main
        jjb = JenkinsJobs(argv)
              ^^^^^^^^^^^^^^^^^
      File "/tmp/tmp.qQ9GsQCSeH/venv/lib64/python3.12/site-packages/jenkins_jobs/cli/entry.py", line 60, in __init__
        self.parser = create_parser()
                      ^^^^^^^^^^^^^^^
      File "/tmp/tmp.qQ9GsQCSeH/venv/lib64/python3.12/site-packages/jenkins_jobs/cli/parser.py", line 112, in create_parser
        extension_manager.map(parse_subcommand_args, subparser)
      File "/tmp/tmp.qQ9GsQCSeH/venv/lib64/python3.12/site-packages/stevedore/extension.py", line 276, in map
        raise NoMatches('No %s extensions found' % self.namespace)
    stevedore.exception.NoMatches: No jjb.cli.subcommands extensions found

I could only reproduce this on Python 3.12, as on 3.11 and earlier a
`python -m venv` installs setuptools already (to bootstrap pip?).

Fixes: 67645a46eb
Change-Id: I679bbfd4b178094585587b5f47d56da37c663b5c
Signed-off-by: Evgeni Golov <evgeni@golov.de>
This commit is contained in:
Evgeni Golov 2024-05-10 08:42:39 +02:00
parent 4897d5e047
commit 7160c2d8cc

View File

@ -9,3 +9,4 @@ stevedore>=1.17.1; python_version >= '3.0' # Apache-2.0
python-jenkins>=1.8.2
fasteners
Jinja2
setuptools