Kav*_*404 9 amazon-web-services amazon-cloudfront terraform terraform-provider-aws
我正在寻找一种使用 Terraform 使 CloudFront 分发缓存失效的方法。
我在文档中找不到任何信息。
这可能吗?如果可能的话,如何实现?
Erm*_*ary 12
aws_cloudfront_distribution
或资源中没有对缓存失效的内置支持aws_cloudfront_cache_policy
。
作为最后的手段,local_exec
可以使用配置器。
根据我的经验,通常情况下,缓存会使用 AWS CLIcreate-invalidation
命令在 CI/CD 管道中失效。
但是,如果必须在 Terraform 中完成此操作,则可以local-exec
在创建/更新资源后使用配置程序在运行 Terraform 的本地计算机上运行命令。
我们可以使用它来运行上述 CLI 失效命令以使分发缓存失效。
使用该self
对象访问 CloudFront 分配的所有属性,包括self.id
引用用于失效的 CloudFront 分配 ID
例子:
resource "aws_cloudfront_distribution" "s3_distribution" {
# ...
provisioner "local-exec" {
command = "aws cloudfront create-invalidation --distribution-id ${self.id} --paths '...'"
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9016 次 |
最近记录: |