Feature #9775
closedteuthology-suite: use same s3-tests branch as suite-branch; override with argument
0%
Description
Currently we use the s3-tests branch of the same name as ceph if it is exists, otherwise master. Sometimes we are testing code that is targetted at an older branch (say, firefly) and want to run those s3-tests instead.
It is (maybe?) possible to put this in a yaml and pass it to teuthology-suite, provided the master sha1 generated by teuthology-suite itself doesn't take precedence. However, that makes for an awkward experience for someone who "just wants to run rgw suite on wip-myfix-firefly on firefly".
In reality, I think what we really want is the major release version of the tests. firefly, giant, dumpling, etc. Which means the s3-tests branch more naturally aligns with the ceph-qa-suite branch we are using, not ceph.git.
So, three changes:
1) make the s3-tests branch default to the ceph-qa-suite branch, not ceph branch
2) if the branch doesn't exist, error out
3) add an argument (--s3-tests-branch <foo>) to specify this on the command line
Note that suite branch defaults to the ceph branch. Make sure the s3-tests branch resolution happens after that, so that
teuthology-suite -s rgw -c firefly
will use firefly branch of ceph, suite, and s3-tests.
Updated by Zack Cerza over 9 years ago
- Tracker changed from Bug to Feature
The current behavior isn't what you're saying above since the s3tests
task never actually used the s3_branch
value that teuthogy-suite
set, and schedule_suite.sh
set before it. It turns out that it this was always the behavior:
s3tests
checks to see if it is passed abranch
arg- If not, it uses
master
. Hardcoded. - If any of the git processes on remotes fail, job fails.
It seems that we want:
s3tests
checks to see if it is passed abranch
arg- If not, it uses
suite_branch
(which defaults to the cephbranch
but can be overridden - If any of the git processes on remotes fail, job fails.
Additionally you're asking for another arg to teuthology-suite
to override, but is it really necessary? How often do ceph's branch
, suite_branch
, and s3tests' branch
have to be all different?
Updated by Sage Weil over 9 years ago
Zack Cerza wrote:
The current behavior isn't what you're saying above since the
s3tests
task never actually used thes3_branch
value thatteuthogy-suite
set, andschedule_suite.sh
set before it. It turns out that it this was always the behavior:
s3tests
checks to see if it is passed abranch
arg- If not, it uses
master
. Hardcoded.- If any of the git processes on remotes fail, job fails.
It seems that we want:
s3tests
checks to see if it is passed abranch
arg- If not, it uses
suite_branch
(which defaults to the cephbranch
but can be overridden- If any of the git processes on remotes fail, job fails.
Ah, that's simpler. Then suite.py doesn't have to do anything special.
Additionally you're asking for another arg to
teuthology-suite
to override, but is it really necessary? How often do ceph'sbranch
,suite_branch
, and s3tests'branch
have to be all different?
Fair enough. The user can work around this by pushing a branch with teh same name to ceph-qa-suite.git and s3-tests.git pointing to whatever they want.
Updated by Zack Cerza over 9 years ago
- Status changed from New to Resolved