From: Yuval Lifshitz Date: Thu, 17 Apr 2025 12:37:03 +0000 (+0000) Subject: rgw/logging: mark test that require rollover time set X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=efcf5a70b5cf91acababb6d84be0f44ee364d65b;p=s3-tests.git rgw/logging: mark test that require rollover time set Signed-off-by: Yuval Lifshitz --- diff --git a/README.rst b/README.rst index 3c429d94..e970dc27 100644 --- a/README.rst +++ b/README.rst @@ -104,9 +104,9 @@ You can filter tests based on their attributes:: Bucket logging tests ======================== -Ceph has extensions for the bucket logging S3 API. For the tests to cover these extensions, the following file: `examples/rgw/boto3/service-2.sdk-extras.json` from the Ceph repo, +Ceph has extensions for the bucket logging S3 API. For the tests to cover these extensions, the following file: `examples/rgw/boto3/service-2.sdk-extras.json` from the Ceph repo, should be copied to the: `~/.aws/models/s3/2006-03-01/` directory on the machine where the tests are run. -If the file is not present, the tests will still run, but the extension tests will be skipped. In this case, the bucket logging object roll time must be decreased manually from its default of +If the file is not present, the tests will still run, but the extension tests will be skipped. In this case, the bucket logging object roll time must be decreased manually from its default of 300 seconds to 5 seconds:: vstart.sh -o rgw_bucket_logging_object_roll_time=5 @@ -114,3 +114,7 @@ If the file is not present, the tests will still run, but the extension tests wi Then the tests can be run with:: S3TEST_CONF=your.conf tox -- -m 'bucket_logging' + +To run the only bucket logging tests that do not need extension of rollover time, use:: + + S3TEST_CONF=your.conf tox -- -m 'bucket_logging and not fails_without_logging_rollover' diff --git a/pytest.ini b/pytest.ini index c81a38c1..12918693 100644 --- a/pytest.ini +++ b/pytest.ini @@ -9,6 +9,7 @@ markers = bucket_encryption bucket_logging bucket_logging_cleanup + fails_without_logging_rollover checksum cloud_transition cloud_restore diff --git a/s3tests_boto3/functional/test_s3.py b/s3tests_boto3/functional/test_s3.py index c39f9d86..529deb60 100644 --- a/s3tests_boto3/functional/test_s3.py +++ b/s3tests_boto3/functional/test_s3.py @@ -15694,6 +15694,7 @@ def _put_bucket_logging_tenant(log_type): @pytest.mark.bucket_logging @pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_put_bucket_logging_tenant_s(): _put_bucket_logging_tenant('Standard') @@ -15765,6 +15766,7 @@ def _put_bucket_logging_account(log_type): @pytest.mark.bucket_logging @pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_put_bucket_logging_account_s(): _put_bucket_logging_account('Standard') @@ -15882,16 +15884,22 @@ def _bucket_logging_put_objects(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_put_objects(): _bucket_logging_put_objects(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_put_objects_versioned(): _bucket_logging_put_objects(True) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_put_concurrency(): src_bucket_name = get_new_bucket() log_bucket_name = get_new_bucket_name() @@ -16006,11 +16014,15 @@ def _bucket_logging_delete_objects(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_delete_objects(): _bucket_logging_delete_objects(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_delete_objects_versioned(): _bucket_logging_delete_objects(True) @@ -16071,11 +16083,15 @@ def _bucket_logging_get_objects(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_get_objects(): _bucket_logging_get_objects(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_get_objects_versioned(): _bucket_logging_get_objects(True) @@ -16143,21 +16159,29 @@ def _bucket_logging_copy_objects(versioned, another_bucket): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_copy_objects(): _bucket_logging_copy_objects(False, False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_copy_objects_versioned(): _bucket_logging_copy_objects(True, False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_copy_objects_bucket(): _bucket_logging_copy_objects(False, True) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_copy_objects_bucket_versioned(): _bucket_logging_copy_objects(True, True) @@ -16216,11 +16240,15 @@ def _bucket_logging_head_objects(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_head_objects(): _bucket_logging_head_objects(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_head_objects_versioned(): _bucket_logging_head_objects(True) @@ -16275,11 +16303,15 @@ def _bucket_logging_mpu(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_mpu(): _bucket_logging_mpu(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_mpu_versioned(): _bucket_logging_mpu(True) @@ -16331,11 +16363,15 @@ def _bucket_logging_mpu_copy(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_mpu_copy(): _bucket_logging_mpu_copy(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_mpu_copy_versioned(): _bucket_logging_mpu_copy(True) @@ -16402,11 +16438,15 @@ def _bucket_logging_multi_delete(versioned): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_multi_delete(): _bucket_logging_multi_delete(False) @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_multi_delete_versioned(): _bucket_logging_multi_delete(True) @@ -16547,6 +16587,8 @@ def test_bucket_logging_roll_time(): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_multiple_prefixes(): log_bucket_name = get_new_bucket_name() log_bucket = get_new_bucket_resource(name=log_bucket_name) @@ -16601,6 +16643,8 @@ def test_bucket_logging_multiple_prefixes(): @pytest.mark.bucket_logging +@pytest.mark.fails_on_aws +@pytest.mark.fails_without_logging_rollover def test_bucket_logging_single_prefix(): log_bucket_name = get_new_bucket_name() log_bucket = get_new_bucket_resource(name=log_bucket_name)