m90*_*m90 5 amazon-web-services amazon-cloudfront aws-cli
我正在尝试使用(截至目前)实验性aws cloudfront CLI工具使AWS Cloudfront发行版上的单个文件无效.我无法弄清楚如何格式化它希望传递给--invalidation-batch参数的JSON .
我发现的唯一文档只解释了它所期望的XML,但我很难将其转换为JSON:http://docs.aws.amazon.com/AmazonCloudFront/latest/APIReference/CreateInvalidation.html
我试过了:
{
"Paths" : {
"Quantity" : 1,
"Items" : ["/foobar.js"]
},
"CallerReference" : "foo-bar-baz"
}
Run Code Online (Sandbox Code Playgroud)
有没有人用过这个并想出格式化JSON?
imp*_*lix 10
您可以使用以下命令生成示例JSON.
$ aws cloudfront create-invalidation --generate-cli-skeleton | vi -
输出:
{
"DistributionId": "",
"InvalidationBatch": {
"Paths": {
"Quantity": 0,
"Items": [
""
]
},
"CallerReference": ""
}
}
Run Code Online (Sandbox Code Playgroud)
以下是从Bash脚本执行此操作的完整实用示例,包括处理为每个失效创建唯一ID的需要(此处我的目的非常独特):
INVALIDATION_ID=$(date +"%S")
INVALIDATION_JSON="{
\"DistributionId\": \"YOUR_ID\",
\"InvalidationBatch\": {
\"Paths\": {
\"Quantity\": 2,
\"Items\": [
\"/foo.png\",
\"/bar.jpg\"
]
},
\"CallerReference\": \"$INVALIDATION_ID\"
}
}"
aws cloudfront create-invalidation --cli-input-json "$INVALIDATION_JSON"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1290 次 |
| 最近记录: |