# Excluded S3 feature tests # ========================= # # These tests are intentionally excluded from RustFS compatibility gating. # # Exclusion buckets: # - Vendor-specific behavior not required for RustFS S3 compatibility # - Intentionally unsupported by product decision (for example ACL authorization) # Vendor-specific / non-portable tests test_account_usage test_bucket_get_location test_bucket_head_extended test_bucket_header_acl_grants test_bucket_list_return_data test_bucket_list_return_data_versioning test_bucket_logging_bucket_acl_required test_bucket_logging_bucket_auth_type test_bucket_logging_cleanup_bucket_concurrent_deletion_j test_bucket_logging_cleanup_bucket_concurrent_deletion_j_single test_bucket_logging_cleanup_bucket_concurrent_deletion_s test_bucket_logging_cleanup_bucket_concurrent_deletion_s_single test_bucket_logging_cleanup_bucket_deletion_j test_bucket_logging_cleanup_bucket_deletion_j_single test_bucket_logging_cleanup_bucket_deletion_s test_bucket_logging_cleanup_bucket_deletion_s_single test_bucket_logging_cleanup_concurrent_disabling_j test_bucket_logging_cleanup_concurrent_disabling_j_single test_bucket_logging_cleanup_concurrent_disabling_s test_bucket_logging_cleanup_concurrent_disabling_s_single test_bucket_logging_cleanup_concurrent_updating_j test_bucket_logging_cleanup_concurrent_updating_j_single test_bucket_logging_cleanup_concurrent_updating_s test_bucket_logging_cleanup_concurrent_updating_s_single test_bucket_logging_cleanup_disabling_j test_bucket_logging_cleanup_disabling_j_single test_bucket_logging_cleanup_disabling_s test_bucket_logging_cleanup_disabling_s_single test_bucket_logging_cleanup_updating_j test_bucket_logging_cleanup_updating_j_single test_bucket_logging_cleanup_updating_s test_bucket_logging_cleanup_updating_s_single test_bucket_logging_concurrent_flush_j test_bucket_logging_concurrent_flush_j_single test_bucket_logging_concurrent_flush_s test_bucket_logging_concurrent_flush_s_single test_bucket_logging_conf_concurrent_updating_pfx_j test_bucket_logging_conf_concurrent_updating_pfx_s test_bucket_logging_conf_concurrent_updating_roll_j test_bucket_logging_conf_concurrent_updating_roll_s test_bucket_logging_conf_updating_pfx_j test_bucket_logging_conf_updating_pfx_s test_bucket_logging_conf_updating_roll_j test_bucket_logging_conf_updating_roll_s test_bucket_logging_copy_objects test_bucket_logging_copy_objects_bucket test_bucket_logging_copy_objects_bucket_versioned test_bucket_logging_copy_objects_versioned test_bucket_logging_delete_objects test_bucket_logging_delete_objects_versioned test_bucket_logging_event_type_j test_bucket_logging_event_type_s test_bucket_logging_flush_empty test_bucket_logging_flush_j test_bucket_logging_flush_j_single test_bucket_logging_flush_s test_bucket_logging_flush_s_single test_bucket_logging_get_objects test_bucket_logging_get_objects_versioned test_bucket_logging_head_objects test_bucket_logging_head_objects_versioned test_bucket_logging_key_filter_j test_bucket_logging_key_filter_s test_bucket_logging_mpu_copy test_bucket_logging_mpu_copy_versioned test_bucket_logging_mpu_j test_bucket_logging_mpu_s test_bucket_logging_mpu_versioned_j test_bucket_logging_mpu_versioned_s test_bucket_logging_mtime test_bucket_logging_multi_delete test_bucket_logging_multi_delete_versioned test_bucket_logging_multiple_prefixes test_bucket_logging_notupdating_j test_bucket_logging_notupdating_j_single test_bucket_logging_notupdating_s test_bucket_logging_notupdating_s_single test_bucket_logging_object_acl_required test_bucket_logging_object_meta test_bucket_logging_part_cleanup_concurrent_deletion_j test_bucket_logging_part_cleanup_concurrent_deletion_s test_bucket_logging_part_cleanup_concurrent_disabling_j test_bucket_logging_part_cleanup_concurrent_disabling_s test_bucket_logging_part_cleanup_concurrent_updating_j test_bucket_logging_part_cleanup_concurrent_updating_s test_bucket_logging_part_cleanup_deletion_j test_bucket_logging_part_cleanup_deletion_s test_bucket_logging_part_cleanup_disabling_j test_bucket_logging_part_cleanup_disabling_s test_bucket_logging_part_cleanup_updating_j test_bucket_logging_part_cleanup_updating_s test_bucket_logging_partitioned_key test_bucket_logging_permission_change_j test_bucket_logging_permission_change_s test_bucket_logging_put_and_flush test_bucket_logging_put_concurrency test_bucket_logging_put_objects test_bucket_logging_put_objects_versioned test_bucket_logging_roll_time test_bucket_logging_simple_key test_bucket_logging_single_prefix test_bucket_logging_target_cleanup_j test_bucket_logging_target_cleanup_j_single test_bucket_logging_target_cleanup_s test_bucket_logging_target_cleanup_s_single test_bucket_policy_get_obj_acl_existing_tag test_bucket_policy_get_obj_existing_tag test_bucket_policy_get_obj_tagging_existing_tag test_bucket_policy_put_obj_copy_source test_bucket_policy_put_obj_copy_source_meta test_bucket_policy_put_obj_request_obj_tag test_bucket_policy_put_obj_tagging_existing_tag test_bucket_policy_set_condition_operator_end_with_IfExists test_bucket_policy_upload_part_copy test_bucket_recreate_new_acl test_bucket_recreate_overwrite_acl test_cors_presigned_get_object_tenant_v2 test_cors_presigned_get_object_v2 test_cors_presigned_put_object_tenant_v2 test_cors_presigned_put_object_v2 test_create_bucket_bucket_owner_enforced test_create_bucket_bucket_owner_preferred test_create_bucket_object_writer test_delete_marker_expiration test_delete_marker_nonversioned test_delete_marker_suspended test_delete_marker_versioned test_delete_object_current_if_match test_delete_object_current_if_match_last_modified_time test_delete_object_current_if_match_size test_delete_object_if_match test_delete_object_if_match_last_modified_time test_delete_object_if_match_size test_delete_object_version_if_match test_delete_object_version_if_match_last_modified_time test_delete_object_version_if_match_size test_delete_objects_current_if_match test_delete_objects_current_if_match_last_modified_time test_delete_objects_current_if_match_size test_delete_objects_if_match test_delete_objects_if_match_last_modified_time test_delete_objects_if_match_size test_delete_objects_version_if_match test_delete_objects_version_if_match_last_modified_time test_delete_objects_version_if_match_size test_encryption_sse_c_multipart_invalid_chunks_1 test_encryption_sse_c_multipart_invalid_chunks_2 test_get_multipart_checksum_object_attributes test_head_bucket_usage # ----------------------------------------------------------------------------- # Lifecycle behavior (backlog#1148 ilm-10, master plan #1155) # # The upstream "Vendor-specific" label on these was inaccurate: the real blocker # was the absence of a Ceph `lc_debug_interval` equivalent, so Days>=1 expiration # behavior could not be exercised in seconds. RUSTFS_ILM_DEBUG_DAY_SECS (ilm-5) # now provides that. The first batch of expiration tests has been moved into the # dedicated behavior lane: scripts/s3-tests/lifecycle_behavior_tests.txt # (run by the ci.yml job `s3-lifecycle-behavior-tests`). The entries below are # NOT vendor-specific — they stay excluded from the DEFAULT single-server gate # for the specific reasons noted, and are queued for later batches. # # --- Batch 2 candidates: expiration with tag / size filters + noncurrent counts. # These need the same debug/scanner lane as batch 1 plus tag/size-filter and # NewerNoncurrentVersions coverage (see ilm-9). Queued for ilm-10 batch 2. test_lifecycle_deletemarker_expiration_with_days_tag test_lifecycle_expiration_newer_noncurrent test_lifecycle_expiration_noncur_tags1 test_lifecycle_expiration_size_gt test_lifecycle_expiration_size_lt test_lifecycle_expiration_tags2 test_lifecycle_expiration_versioned_tags2 # # --- Storage-class transition to a remote/warm tier. Needs a real tier backend # (the hermetic second-RustFS cold layer from ilm-7) which is not wired into # the s3-tests topology. Queued behind ilm-7. test_lifecycle_noncur_transition test_lifecycle_transition # # --- Single-rule multi-level Transition (hot->warm->cold). RustFS only honors # transitions.first() (core.rs:676); multi-level semantics are undecided and # tracked as a product item (ex-ilm-20). Do not enable until that lands. test_lifecycle_transition_single_rule_multi_trans # # --- Cloud (S3/remote) transition + restore. Requires the [s3 cloud] endpoint # the RustFS SNSD harness does not provision; depends on ilm-7 tier carrier. test_lifecycle_cloud_multiple_transition test_lifecycle_cloud_transition test_lifecycle_cloud_transition_large_obj test_lifecycle_noncur_cloud_transition # ----------------------------------------------------------------------------- test_list_buckets_anonymous test_list_buckets_paginated test_list_multipart_upload test_list_multipart_upload_owner test_multipart_get_part test_multipart_single_get_part test_multipart_sse_c_get_part test_multipart_upload test_multipart_upload_small test_multipart_use_cksum_helper_crc32 test_multipart_use_cksum_helper_crc32c test_multipart_use_cksum_helper_crc64nvme test_multipart_use_cksum_helper_sha1 test_multipart_use_cksum_helper_sha256 test_object_header_acl_grants test_object_raw_get_x_amz_expires_out_max_range test_object_raw_get_x_amz_expires_out_positive_range test_object_raw_put_authenticated_expired test_object_read_unreadable test_object_requestid_matches_header_on_error test_object_set_get_unicode_metadata test_object_write_with_chunked_transfer_encoding test_post_object_invalid_date_format test_post_object_invalid_request_field_value test_post_object_missing_policy_condition test_post_object_request_missing_policy_specified_field test_post_object_set_key_from_filename test_post_object_success_redirect_action test_post_object_tags_anonymous_request test_post_object_wrong_bucket test_put_bucket_logging_account_j test_put_bucket_logging_account_s test_put_bucket_logging_extensions test_put_bucket_logging_policy_wildcard_objects test_put_bucket_logging_tenant_j test_put_bucket_logging_tenant_s test_put_bucket_ownership_bucket_owner_enforced test_put_bucket_ownership_bucket_owner_preferred test_put_bucket_ownership_object_writer test_put_object_current_if_match test_read_through test_restore_noncur_obj test_restore_object_permanent test_restore_object_temporary test_sse_kms_post_object_authenticated_request test_versioned_object_acl_no_version_specified test_versioning_multi_object_delete_with_marker_create test_versioning_stack_delete_merkers # Intentionally unsupported by design: ACL-related tests test_object_raw_get test_object_raw_get_bucket_gone test_object_raw_get_object_gone test_object_copy_not_owned_object_bucket test_100_continue test_cors_origin_response test_cors_origin_wildcard test_bucket_policy_put_obj_grant test_bucket_list_objects_anonymous test_bucket_listv2_objects_anonymous test_post_object_anonymous_request test_post_object_set_success_code test_post_object_set_invalid_success_code test_access_bucket_private_object_private test_access_bucket_private_object_publicread test_access_bucket_private_object_publicreadwrite test_access_bucket_private_objectv2_private test_access_bucket_private_objectv2_publicread test_access_bucket_private_objectv2_publicreadwrite test_access_bucket_publicread_object_private test_access_bucket_publicread_object_publicread test_access_bucket_publicread_object_publicreadwrite test_access_bucket_publicreadwrite_object_private test_access_bucket_publicreadwrite_object_publicread test_access_bucket_publicreadwrite_object_publicreadwrite test_object_anon_put_write_access test_get_public_acl_bucket_policy_status test_get_authpublic_acl_bucket_policy_status test_block_public_put_bucket_acls test_block_public_object_canned_acls test_ignore_public_acls test_versioned_object_acl test_bucket_acl_canned test_bucket_acl_canned_authenticatedread test_bucket_acl_canned_during_create test_bucket_acl_canned_publicreadwrite test_bucket_acl_default test_bucket_acl_grant_email test_bucket_acl_grant_email_not_exist test_bucket_acl_grant_nonexist_user test_bucket_acl_grant_userid_fullcontrol test_bucket_acl_grant_userid_read test_bucket_acl_grant_userid_readacp test_bucket_acl_grant_userid_write test_bucket_acl_grant_userid_writeacp test_bucket_acl_revoke_all test_object_acl test_object_acl_canned test_object_acl_canned_authenticatedread test_object_acl_canned_bucketownerfullcontrol test_object_acl_canned_bucketownerread test_object_acl_canned_during_create test_object_acl_canned_publicreadwrite test_object_acl_default test_object_acl_full_control_verify_attributes test_object_acl_full_control_verify_owner test_object_acl_read test_object_acl_readacp test_object_acl_write test_object_acl_writeacp test_put_bucket_acl_grant_group_read test_object_raw_get_bucket_acl