我正在编写这个 S3 存储桶生命周期规则:
lifecycle_rules = [
{
id = "log"
enabled = true
prefix = "log/"
tags = {
"rule" = "log"
"autoclean" = "true"
}
expiration = {
days = 365
}
}
]
下面提供了存储桶的 ASCII 模拟图: 日志每天在此存储桶中动态写入。一些在文件夹logs/
中,一些在子文件夹中,一些在failed_logs/
存储桶的根文件夹中。
BUCKET/
|
nonlogfile.exe
log_file_that_i_DONT_wanna_delete.log
logs/
|
file1 (Created 2021-01-01)
file2 (Created 2021-01-02)
failed_logs/
|
file3 (Created 2021-01-03)
file4 (Created 2021-01-04)
log/
我的目标是使文件夹中的每个文件(及其子文件夹failed_logs
在 365 天后过期。
`file1` would expire at 2022-01-01
`file2` would expire at 2022-01-02
`file3` would expire at 2022-01-03
`file4` would expire at 2022-01-04
然而
nonlogfile.exe
log_file_that_i_DONT_wanna_delete.log
永远不会过期。
Terraform 的aws_s3_bucket 文档指出:
该
lifecycle_rule
对象支持以下内容:
prefix
- (可选)标识规则应用的一个或多个对象的对象键前缀。
tags
- (可选)指定对象标签键和值。
- 没看懂
prefix
属性 - 我的文件没有标记
我如何根据它们在存储桶上的位置来定位它们,如上所述?