Skip to content

Commit 4106cef

Browse files
committed
Enable console to set expired-object-all-versions
Signed-off-by: Shubhendu Ram Tripathi <[email protected]>
1 parent 942b810 commit 4106cef

14 files changed

+192
-290
lines changed

api/embedded_spec.go

+30
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/user_buckets_lifecycle.go

+6
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ func getBucketLifecycle(ctx context.Context, client MinioClient, bucketName stri
117117
Date: rule.Expiration.Date.Format(time.RFC3339),
118118
Days: int64(rule.Expiration.Days),
119119
DeleteMarker: rule.Expiration.DeleteMarker.IsEnabled(),
120+
DeleteAll: bool(rule.Expiration.DeleteAll),
120121
NoncurrentExpirationDays: int64(rule.NoncurrentVersionExpiration.NoncurrentDays),
121122
NewerNoncurrentExpirationVersions: int64(rule.NoncurrentVersionExpiration.NewerNoncurrentVersions),
122123
},
@@ -188,6 +189,7 @@ func addBucketLifecycle(ctx context.Context, client MinioClient, params bucketAp
188189
Status: &status,
189190
Tags: &params.Body.Tags,
190191
ExpiredObjectDeleteMarker: &params.Body.ExpiredObjectDeleteMarker,
192+
ExpiredObjectAllversions: &params.Body.ExpiredObjectDeleteAll,
191193
}
192194

193195
if params.Body.NoncurrentversionTransitionDays > 0 {
@@ -219,6 +221,7 @@ func addBucketLifecycle(ctx context.Context, client MinioClient, params bucketAp
219221
Status: &status,
220222
Tags: &params.Body.Tags,
221223
ExpiredObjectDeleteMarker: &params.Body.ExpiredObjectDeleteMarker,
224+
ExpiredObjectAllversions: &params.Body.ExpiredObjectDeleteAll,
222225
}
223226

224227
if params.Body.NewerNoncurrentversionExpirationVersions > 0 {
@@ -298,6 +301,7 @@ func editBucketLifecycle(ctx context.Context, client MinioClient, params bucketA
298301
Status: &status,
299302
Tags: &params.Body.Tags,
300303
ExpiredObjectDeleteMarker: &params.Body.ExpiredObjectDeleteMarker,
304+
ExpiredObjectAllversions: &params.Body.ExpiredObjectDeleteAll,
301305
}
302306

303307
if params.Body.NoncurrentversionTransitionDays > 0 {
@@ -328,6 +332,7 @@ func editBucketLifecycle(ctx context.Context, client MinioClient, params bucketA
328332
Status: &status,
329333
Tags: &params.Body.Tags,
330334
ExpiredObjectDeleteMarker: &params.Body.ExpiredObjectDeleteMarker,
335+
ExpiredObjectAllversions: &params.Body.ExpiredObjectDeleteAll,
331336
}
332337

333338
if params.Body.NoncurrentversionExpirationDays > 0 {
@@ -456,6 +461,7 @@ func addMultiBucketLifecycle(ctx context.Context, client MinioClient, params buc
456461
ExpiryDays: params.Body.ExpiryDays,
457462
Disable: false,
458463
ExpiredObjectDeleteMarker: params.Body.ExpiredObjectDeleteMarker,
464+
ExpiredObjectDeleteAll: params.Body.ExpiredObjectDeleteMarker,
459465
}
460466

461467
go func() {

go.mod

+6-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ require (
2121
github.com/minio/cli v1.24.2
2222
github.com/minio/highwayhash v1.0.2
2323
github.com/minio/kes v0.22.3
24-
github.com/minio/madmin-go/v3 v3.0.37
24+
github.com/minio/madmin-go/v3 v3.0.41
2525
github.com/minio/mc v0.0.0-20231220084513-fb5dd2588c58
2626
github.com/minio/minio-go/v7 v7.0.66
2727
github.com/minio/selfupdate v0.6.0
@@ -158,3 +158,8 @@ require (
158158
gopkg.in/ini.v1 v1.67.0 // indirect
159159
gopkg.in/yaml.v3 v3.0.1 // indirect
160160
)
161+
162+
replace (
163+
github.com/minio/mc v0.0.0-20231220084513-fb5dd2588c58 => github.com/shtripat/mc v0.0.0-20240206105042-ed939f7d7fe1
164+
github.com/minio/minio-go/v7 v7.0.66 => github.com/shtripat/minio-go/v7 v7.0.0-20240202183248-66833ac17373
165+
)

go.sum

+6-6
Original file line numberDiff line numberDiff line change
@@ -180,14 +180,10 @@ github.com/minio/highwayhash v1.0.2 h1:Aak5U0nElisjDCfPSG79Tgzkn2gl66NxOMspRrKnA
180180
github.com/minio/highwayhash v1.0.2/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY=
181181
github.com/minio/kes v0.22.3 h1:aSPW9uCMVaLax5POxvoQJxCU4MNo/KzMXA7WfmC/lRw=
182182
github.com/minio/kes v0.22.3/go.mod h1:wnhmdwWX2rpurNPKn3yDFImg2wuc7j3e+IU5rVkR9UY=
183-
github.com/minio/madmin-go/v3 v3.0.37 h1:u8gl6xg6Vt+LLwes/8rJhAq2wtpIRWRULptNVQtH9JE=
184-
github.com/minio/madmin-go/v3 v3.0.37/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8=
185-
github.com/minio/mc v0.0.0-20231220084513-fb5dd2588c58 h1:K6H2WPzDUYhbFAswRCrjsirXSjRjVw6lZ7U4rcBojyk=
186-
github.com/minio/mc v0.0.0-20231220084513-fb5dd2588c58/go.mod h1:wFVJTmLJniMFDkcvPP0h/KvCxK+MiA2rc6q7KUefN28=
183+
github.com/minio/madmin-go/v3 v3.0.41 h1:9pU7xW51cn8Ixy8ftaRfp4SbHtnhEPlwU6mMA9KwwB8=
184+
github.com/minio/madmin-go/v3 v3.0.41/go.mod h1:4QN2NftLSV7MdlT50dkrenOMmNVHluxTvlqJou3hte8=
187185
github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
188186
github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM=
189-
github.com/minio/minio-go/v7 v7.0.66 h1:bnTOXOHjOqv/gcMuiVbN9o2ngRItvqE774dG9nq0Dzw=
190-
github.com/minio/minio-go/v7 v7.0.66/go.mod h1:DHAgmyQEGdW3Cif0UooKOyrT3Vxs82zNdV6tkKhRtbs=
191187
github.com/minio/mux v1.9.0 h1:dWafQFyEfGhJvK6AwLOt83bIG5bxKxKJnKMCi0XAaoA=
192188
github.com/minio/pkg/v2 v2.0.8 h1:JuNWjELRaDSMZegeWxNcx5Lf7ZxqKAI5hjSgx1bLbKc=
193189
github.com/minio/pkg/v2 v2.0.8/go.mod h1:yayUTo82b0RK+e97hGb1naC787mOtUEyDs3SIcwSyHI=
@@ -270,6 +266,10 @@ github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFt
270266
github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ=
271267
github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU=
272268
github.com/shoenig/test v0.6.4/go.mod h1:byHiCGXqrVaflBLAMq/srcZIHynQPQgeyvkvXnjqq0k=
269+
github.com/shtripat/mc v0.0.0-20240206105042-ed939f7d7fe1 h1:kzqQ4CW3SNHRSvZopKQXhgA9lMmHw18oXjtd+Ru7UJs=
270+
github.com/shtripat/mc v0.0.0-20240206105042-ed939f7d7fe1/go.mod h1:9opeL9Qw8zh5u6Vl2Dn87F0pRGxwBbWr2liWbf/7afU=
271+
github.com/shtripat/minio-go/v7 v7.0.0-20240202183248-66833ac17373 h1:hz25DAcMQoJVpkdtYahGhtNzsHlKb6vQJQElSCO2IR0=
272+
github.com/shtripat/minio-go/v7 v7.0.0-20240202183248-66833ac17373/go.mod h1:+UXocnUeZ3wHvVh5s95gcrA4YjMIbccT6ubB+1m054A=
273273
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
274274
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
275275
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=

models/add_bucket_lifecycle.go

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

models/add_multi_bucket_lifecycle.go

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

models/expiration_response.go

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

models/update_bucket_lifecycle.go

+3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

swagger.yml

+11
Original file line numberDiff line numberDiff line change
@@ -5109,6 +5109,8 @@ definitions:
51095109
format: int64
51105110
delete_marker:
51115111
type: boolean
5112+
delete_all:
5113+
type: boolean
51125114
noncurrent_expiration_days:
51135115
type: integer
51145116
format: int64
@@ -5192,6 +5194,9 @@ definitions:
51925194
expired_object_delete_marker:
51935195
description: Non required, toggle to disable or enable rule
51945196
type: boolean
5197+
expired_object_delete_all:
5198+
description: Non required, toggle to disable or enable rule
5199+
type: boolean
51955200
noncurrentversion_expiration_days:
51965201
description: Non required, can be set in case of expiration is enabled
51975202
type: integer
@@ -5247,6 +5252,9 @@ definitions:
52475252
expired_object_delete_marker:
52485253
description: Non required, toggle to disable or enable rule
52495254
type: boolean
5255+
expired_object_delete_all:
5256+
description: Non required, toggle to disable or enable rule
5257+
type: boolean
52505258
noncurrentversion_expiration_days:
52515259
description: Non required, can be set in case of expiration is enabled
52525260
type: integer
@@ -5299,6 +5307,9 @@ definitions:
52995307
expired_object_delete_marker:
53005308
description: Non required, toggle to disable or enable rule
53015309
type: boolean
5310+
expired_object_delete_all:
5311+
description: Non required, toggle to disable or enable rule
5312+
type: boolean
53025313
noncurrentversion_expiration_days:
53035314
description: Non required, can be set in case of expiration is enabled
53045315
type: integer

0 commit comments

Comments
 (0)