Merge pull request #269 from botdeniska/fix/lifecycle-active-delmarker-expiration

Merge lifecycle fix: count DelMarkerExpiration as an active scanner rule.
This commit is contained in:
Feng Ruohang
2026-11-03 08:23:22 +08:00
committed by GitHub
2 changed files with 23 additions and 0 deletions
+3
View File
@@ -208,6 +208,9 @@ func (lc Lifecycle) HasActiveRules(prefix string) bool {
if rule.Expiration.DeleteMarker.val {
return true
}
if !rule.DelMarkerExpiration.Empty() {
return true
}
if !rule.Transition.IsDateNull() && rule.Transition.Date.Before(time.Now().UTC()) {
return true
}
@@ -819,6 +819,26 @@ func TestHasActiveRules(t *testing.T) {
prefix: "",
want: true,
},
{ // DelMarkerExpiration as the only action
inputConfig: `<LifecycleConfiguration><Rule><Status>Enabled</Status><Filter></Filter><DelMarkerExpiration><Days>1</Days></DelMarkerExpiration></Rule></LifecycleConfiguration>`,
prefix: "",
want: true,
},
{
inputConfig: `<LifecycleConfiguration><Rule><Status>Enabled</Status><Filter><Prefix>foodir/</Prefix></Filter><DelMarkerExpiration><Days>1</Days></DelMarkerExpiration></Rule></LifecycleConfiguration>`,
prefix: "foodir/foobject",
want: true,
},
{
inputConfig: `<LifecycleConfiguration><Rule><Status>Enabled</Status><Filter><Prefix>foodir/</Prefix></Filter><DelMarkerExpiration><Days>1</Days></DelMarkerExpiration></Rule></LifecycleConfiguration>`,
prefix: "zdir/foobject",
want: false,
},
{
inputConfig: `<LifecycleConfiguration><Rule><Status>Disabled</Status><Filter></Filter><DelMarkerExpiration><Days>1</Days></DelMarkerExpiration></Rule></LifecycleConfiguration>`,
prefix: "",
want: false,
},
}
for i, tc := range testCases {