Comments below.

Kyrylo Shatskyy
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5
90409 Nuremberg

On May 13, 2020, at 9:00 AM, Brad Hubbard <> wrote:

On Sat, Apr 25, 2020 at 5:20 AM Gregory Farnum <> wrote:

On Thu, Apr 23, 2020 at 9:59 PM Brad Hubbard <> wrote:

So we are clear about this any tests using a branch based on luminous,
mimic, nautilus, or octopus should use "--teuthology-branch py2".

Anything newer than octopus should be tested against the teuthology
master branch (IOW do not use "--teuthology-branch py2").

Is there a way we can automate this?

One of the idea I have in mind is:
1) submit to ceph branches which are py3 ready a config file for example .ci or .teuthology,
which will include:
teuthology_branch: master
2) the teuthology.suite should be patched to read this file from the local copy of ceph or suite repo,
if the —teuthology-branch is not provided, use teuthology_branch value from it.
3) if corresponding config file missing in the target repos and no option is given, teuthology can take default value
from teuthology_config which we need to set to "py2"

I think to be effective it would have to reject the command line
purely from the command line arguments given and I'm not sure there's
a way to determine what branch a run is based on purely from the
command line arguments with any great certainty unless we decide on a
convention for branch naming that *always* includes the branch (or am
I thinking about this the wrong way?).

I guess the main users of older branches will probably be the
nightlies or using backport scripts so maybe we're okay just leaving
it, but something that checks the included tags and tries to guess or
at least warn if you use the wrong one would prevent some errors.

(I'm assuming this applies to anything we run with
teuthology-schedule, not just direct invocations.)



Hope this is clear.

On Tue, Apr 14, 2020 at 5:40 PM kefu chai <> wrote:

hi folks,

we just migrated ceph:teuthology and all tests under qa/ in ceph:ceph
to python3. and from now on, the teuthology-worker runs in a python3
environment by default unless specified otherwise using
"--teuthology-branch py2".

which means:

- we need to write tests in python3 in master now
- teuthology should be python3 compatible.
- teuthology bug fixes should be backported to "py2" branch.

if you run into any issues related to python3 due to the above
changes, please let me know. and i will try to fix it ASAP.

currently, the tests under qa/ directories in ceph:ceph master branch
are python2 and python3 compatible. but since we've moved to python3,
there is no need to be python2 compatible anymore. since the sepia lab
is still using ubuntu xenial, we cannot use features offered by
python3.6 at this moment yet. but we do plan to upgrade the OS to
bionic soon. before that happens, the tests need to be compatible with

the next step is to

- drop python2 support in ceph:ceph master branch, and
- drop python2 support in ceph:teuthology master.
- backport python3 compatible changes to octopus and nautilus to ease
the pain of backport

Kefu Chai
Dev mailing list --
To unsubscribe send an email to

Dev mailing list --
To unsubscribe send an email to