supervisor: Avoid prematurely pushing some jobs
This is a follow-up to
ff615aae541032c647e78d3959d368f595c93e31; it caused us to
submit the first-in-suite and last-in-suite jobs to paddles. Those present has
having 'unknown' status, which will be confusing to users.
Signed-off-by: Zack Cerza <zack@cerza.org>
kill: Handle supervisor procs when killing runs
This is a follow-up to
ff615aae541032c647e78d3959d368f595c93e31, which only
handled killing individual jobs. Since we're using the results server for all
run and job metadata, we can drop all mentions of the archive. This change
is necessary since we've restricted access to the archive from the teuthology
machine for normal users, to avoid resource contention.
Signed-off-by: Zack Cerza <zack@cerza.org>
teuthology/task/install: implement LooseVersion and use it
The distutils module was deprecated in Python 3.10 and removed in
Python 3.12. This commit replaces the deprecated distutils.version
imports with the a homebrew LooseVersion implementation.
Changes:
- implement LooseVersion which is able to parse versions like
'
10.2.2-63-g8542898-1trusty'.
- Replace distutils.version.LooseVersion with
teuthology.util.version.LooseVersion packaging.version.LooseVersion
Fixes:
```
Traceback (most recent call last):
File "/home/jenkins-build/build/workspace/ceph-api/build/../qa/tasks/vstart_runner.py", line 81, in <module>
from teuthology.orchestra.remote import RemoteShell
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/orchestra/remote.py", line 6, in <module>
import teuthology.lock.util
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/lock/util.py", line 6, in <module>
import teuthology.provision.downburst
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/provision/__init__.py", line 4, in <module>
import teuthology.exporter
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/exporter.py", line 11, in <module>
import teuthology.dispatcher
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/dispatcher/__init__.py", line 22, in <module>
from teuthology.dispatcher import supervisor
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/dispatcher/supervisor.py", line 18, in <module>
from teuthology.task import internal
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/task/internal/__init__.py", line 27, in <module>
from teuthology.task.internal.redhat import (setup_cdn_repo, setup_base_repo, # noqa
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/task/internal/redhat.py", line 13, in <module>
from teuthology.task.install.redhat import set_deb_repo
File "/tmp/tmp.xwxq8FOScf/teuthology/teuthology/task/install/__init__.py", line 14, in <module>
from distutils.version import LooseVersion
ModuleNotFoundError: No module named 'distutils'
```
Related: https://peps.python.org/pep-0632/
Signed-off-by: Kefu Chai <tchaikov@gmail.com>