更多AWS问题!好的,所以想法是一个主模板调用所有嵌套的堆栈.在这里的帮助下,我想出了如何将参数从master传递到嵌套堆栈.现在我试图弄清楚如何将值从嵌套堆栈传递到嵌套堆栈.我相信这应该通过出口和进口来完成,但我认为我没有这么做.我不确定这是我的进口或出口是错的.
我得到的错误是:
No export named TestStack1-VpcStackID found. Rollback requested by user.
Run Code Online (Sandbox Code Playgroud)
主:
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Master template",
"Parameters" : {
"availabilityZone" : {
"Default" : "us-east-1d",
"Description" : "Enter AvailabilityZone.",
"Type" : "String"
},
"VpcCidrBlock" : {
"Default" : "10.0.0.0/16",
"Description" : "VPC CIDR Block.",
"Type" : "String"
},
"PublicSubnetCidrBlock" : {
"Default" : "10.0.0.0/24",
"Description" : "Public subnet CIDR block.",
"Type" : "String"
}
},
"Resources" : {
"VpcStack" : {
"Type" : "AWS::CloudFormation::Stack",
"Properties" : …Run Code Online (Sandbox Code Playgroud) 以下代码应在存储桶/存储桶列表上启用版本控制,然后设置生命周期配置。
import boto3
# Create session
s3 = boto3.resource('s3')
s3Client = boto3.client('s3')
# Bucket list
buckets = ['BUCKETNAMEHERE']
# iterate through list of buckets
for bucket in buckets:
# Enable Versioning
bucketVersioning = s3.BucketVersioning(bucket)
bucketVersioning.enable()
# Configure Lifecycle
s3Client.put_bucket_lifecycle_configuration(
Bucket=bucket,
LifecycleConfiguration={
'Rules': [
{
'Status': 'Enabled',
'NoncurrentVersionTransitions': [
{
'NoncurrentDays': 7,
'StorageClass': 'GLACIER'
},
],
'NoncurrentVersionExpiration': {
'NoncurrentDays': 30
}
},
]
}
)
print "Versioning and lifecycle have been enabled for buckets."
Run Code Online (Sandbox Code Playgroud)
但是,每当我运行此命令时,都会出现以下错误:
File "putVersioning.py", line 42, …Run Code Online (Sandbox Code Playgroud)