Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

qa/rgw/s3tests: make extra_attrs additive #52156

Merged
merged 3 commits into from
Jun 22, 2023

Conversation

cbodley
Copy link
Contributor

@cbodley cbodley commented Jun 22, 2023

the s3tests.py task is filtering out several attrs by default. but when dbstore uses extra_attrs to add 'not fails_on_dbstore', it overwrites those other filters

Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard cephadm
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox
  • jenkins test windows

the s3tests.py task is filtering out several attrs by default. but
when dbstore uses `extra_attrs` to add 'not fails_on_dbstore', it
overwrites those other filters

Signed-off-by: Casey Bodley <cbodley@redhat.com>
Signed-off-by: Casey Bodley <cbodley@redhat.com>
this comment was about the old fails_strict_rfc2616 attr that was
removed in 6238eaa

Signed-off-by: Casey Bodley <cbodley@redhat.com>
@cbodley cbodley requested a review from a team as a code owner June 22, 2023 12:55
args += ['tox', '--', '-v', '-m', ' and '.join(attrs)]
if 'extra_args' in client_config:
args.append(client_config['extra_args'])
args += client_config.get('extra_args', [])
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just so I'm clear, why does this get of extra_args need to be done twice for args? In the dbstore case wouldn't args have the string not fails_on_dbstore twice in it's list at the end.

Copy link
Contributor Author

@cbodley cbodley Jun 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

one of the lines is extra_attrs which refers to the attrs we use for filtering with the pytest -m option

this second one is called extra_args, which can add arbitrary arguments to the pytest command line. the latter doesn't appear to be used by any suites atm

@alimaredia alimaredia self-requested a review June 22, 2023 13:27
@cbodley
Copy link
Contributor Author

cbodley commented Jun 22, 2023

verified that the existing attrs are preserved in http://qa-proxy.ceph.com/teuthology/cbodley-2023-06-22_15:25:21-rgw-main-distro-default-smithi/7311778/teuthology.log:

tox -- -v -m 'not fails_on_rgw and not lifecycle_expiration and not test_of_sts and not webidentity_test and not fails_with_subdomain and not sse_s3 and not fails_on_dbstore'

@alimaredia alimaredia merged commit 26fda85 into ceph:main Jun 22, 2023
11 of 12 checks passed
@cbodley
Copy link
Contributor Author

cbodley commented Jun 27, 2023

it looks like this caused a regression in the rgw/sts subsuite:

ERROR: InvocationError for command /home/ubuntu/cephtest/s3-tests-client.0/.tox/py/bin/pytest -v -m 'not fails_on_rgw and not lifecycle_expiration and not test_of_sts and not webidentity_test and not fails_with_subdomain and not sse_s3 and webidentity_test' (exited with code 5)

because it requests both webidentity_test and not webidentity_test. the rgw.py task should probably avoid adding not webidentity_test here?

tracked in https://tracker.ceph.com/issues/61838

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants