]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
rgwlc: introduce lifecycle config flags extension
authorMatt Benjamin <mbenjamin@redhat.com>
Sat, 20 Nov 2021 18:45:51 +0000 (13:45 -0500)
committerMatt Benjamin <mbenjamin@redhat.com>
Sun, 17 Jul 2022 22:36:51 +0000 (18:36 -0400)
commit23a588da12aa498bb40e800ab1cb84656f2fc763
tree05e3a67b10cafb059c19a9b25c3bee0effa311a5
parentdcc92e07b2557170293e55675763614717c12d98
rgwlc: introduce lifecycle config flags extension

rgwlc: add uint32_t flags bitmap to LCFilter

This is intended to support a concise set of extensions to S3
LifecycleConfiguration, initially, just a flag that indicates a
rule is intended for execution on RGW ArchiveZone.

rgwlc: add machinery to define and recognize LCFilter flags

Add a concept of filter flags to lifecycle filter rules, an RGW
extension.  The initial purpose of flags is to permit marking
specific lifecycle rules as specific to an RGW archive zone, but
other flags could be added in future.

rgwlc: add new unittest_rgw_lc to run internal checks, add a few
valid and invalid lifecycle configuration xml  parses for now.

Fixes: https://tracker.ceph.com/issues/53361
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
src/rgw/rgw_lc.cc
src/rgw/rgw_lc.h
src/rgw/rgw_lc_s3.cc
src/rgw/rgw_lc_s3.h
src/test/rgw/CMakeLists.txt
src/test/rgw/test_rgw_lc.cc [new file with mode: 0644]