I'm running a python program that uses boto3 get_bucket_lifecycle_configuration
API to get lifecycles set on a given bucket. I'm getting the following response -
{"Rules":[
{
"Filter":{
"Prefix":""
},
"Status":"Enabled",
"ID":"deleteIncompleteMPU",
"AbortIncompleteMultipartUpload":{
"DaysAfterInitiation":1
}
},
{
"Filter":{
},
"Status":"Enabled",
"NoncurrentVersionExpiration":{
"NoncurrentDays":12
},
"Expiration":{
"Days":210
},
"AbortIncompleteMultipartUpload":{
"DaysAfterInitiation":1
},
"Transitions":[
{
"Days":30,
"StorageClass":"DEEP_ARCHIVE"
}
],
"ID":"all-curr-GDA-30-non-curr-delete-12"
}
],
"ResponseMetadata":{
}
}
}
My question is that for ID deleteIncompleteMPU, the prefix value is an empty string "Prefix":""
but for ID all-curr-GDA-30-non-curr-delete-12 there is no Prefix key under the Filter key "Filter":{ }
.
Don't both things signify that the rule is set on the entire bucket? If no, then what is the difference?