Troposphere DynamoDB 生存时间规范
Troposphere DynamoDB TimeToLiveSpecification
我正在尝试为新的 DynamoDB table 创建 JSON Cloudformation 模板。我正在尝试设置 TimeToLiveSpecification,但出现错误并且对流层文档不清楚。
我有
dynamoDB = t.add_resource(Table(
"myDynamoTable",
TableName=Join("-", [Ref(env), "dynamo-table"]),
AttributeDefinitions=[
AttributeDefinition(
AttributeName=Ref(hashkeyname),
AttributeType=Ref(hashkeytype)
),
AttributeDefinition(
AttributeName="sqsMessageId",
AttributeType="S"
),
AttributeDefinition(
AttributeName="system",
AttributeType="S"
),`enter code here`
AttributeDefinition(
AttributeName=Ref(sortkeyname),
AttributeType=Ref(sortkeytype)
),
AttributeDefinition(
AttributeName="text",
AttributeType="S"
),
AttributeDefinition(
AttributeName="ttl",
AttributeType="N"
)
],
KeySchema=[
KeySchema(
AttributeName=Ref(hashkeyname),
KeyType="HASH"
),
KeySchema(
AttributeName=Ref(sortkeyname),
KeyType="RANGE"
)
],
TimeToLiveSpecification="WHAT GOES HERE???"
))
我什至尝试过将它按原样格式 JSON 放入,但它不起作用。
我试过:
TimeToLiveSpecification=AWSProperty(AttributeName="ttl", Enabled=True)
TimeToLiveSpecification=AttributeDefinition(AttributeName="ttl", Enabled=True)
TimeToLiveSpecification=TimeToLiveSchema(AttributeName="ttl", Enabled=True)
(用这个抓住救命稻草)。
使用显示的 TimeToLiveSpecification 试试这个(未经测试)here:
TimeToLiveSpecification=TimeToLiveSpecification(
AttributeName="fill this in",
Enabled=True,
),
最后我去了
ttlspec = t.add_resource(TimeToLiveSpecification(
"ttlspec",
AttributeName="ttl",
Enabled=True
))
然后
dynamoDB = t.add_resource(Table(
"myDynamoTable",
TableName=Join("-", [Ref(env), "dynamo-table"]),
AttributeDefinitions=[
AttributeDefinition(
AttributeName=Ref(hashkeyname),
AttributeType=Ref(hashkeytype)
),
AttributeDefinition(
AttributeName="sqsMessageId",
AttributeType="S"
),
AttributeDefinition(
AttributeName="system",
AttributeType="S"
),`enter code here`
AttributeDefinition(
AttributeName=Ref(sortkeyname),
AttributeType=Ref(sortkeytype)
),
AttributeDefinition(
AttributeName="text",
AttributeType="S"
),
AttributeDefinition(
AttributeName="ttl",
AttributeType="N"
)
],
KeySchema=[
KeySchema(
AttributeName=Ref(hashkeyname),
KeyType="HASH"
),
KeySchema(
AttributeName=Ref(sortkeyname),
KeyType="RANGE"
)
],
TimeToLiveSpecification=Ref(ttlspec)
))
TimeToLiveSpecification 是一个 Class,需要在顶部导入。 Docs here.
我正在尝试为新的 DynamoDB table 创建 JSON Cloudformation 模板。我正在尝试设置 TimeToLiveSpecification,但出现错误并且对流层文档不清楚。
我有
dynamoDB = t.add_resource(Table(
"myDynamoTable",
TableName=Join("-", [Ref(env), "dynamo-table"]),
AttributeDefinitions=[
AttributeDefinition(
AttributeName=Ref(hashkeyname),
AttributeType=Ref(hashkeytype)
),
AttributeDefinition(
AttributeName="sqsMessageId",
AttributeType="S"
),
AttributeDefinition(
AttributeName="system",
AttributeType="S"
),`enter code here`
AttributeDefinition(
AttributeName=Ref(sortkeyname),
AttributeType=Ref(sortkeytype)
),
AttributeDefinition(
AttributeName="text",
AttributeType="S"
),
AttributeDefinition(
AttributeName="ttl",
AttributeType="N"
)
],
KeySchema=[
KeySchema(
AttributeName=Ref(hashkeyname),
KeyType="HASH"
),
KeySchema(
AttributeName=Ref(sortkeyname),
KeyType="RANGE"
)
],
TimeToLiveSpecification="WHAT GOES HERE???"
))
我什至尝试过将它按原样格式 JSON 放入,但它不起作用。 我试过:
TimeToLiveSpecification=AWSProperty(AttributeName="ttl", Enabled=True)
TimeToLiveSpecification=AttributeDefinition(AttributeName="ttl", Enabled=True)
TimeToLiveSpecification=TimeToLiveSchema(AttributeName="ttl", Enabled=True)
(用这个抓住救命稻草)。
使用显示的 TimeToLiveSpecification 试试这个(未经测试)here:
TimeToLiveSpecification=TimeToLiveSpecification(
AttributeName="fill this in",
Enabled=True,
),
最后我去了
ttlspec = t.add_resource(TimeToLiveSpecification(
"ttlspec",
AttributeName="ttl",
Enabled=True
))
然后
dynamoDB = t.add_resource(Table(
"myDynamoTable",
TableName=Join("-", [Ref(env), "dynamo-table"]),
AttributeDefinitions=[
AttributeDefinition(
AttributeName=Ref(hashkeyname),
AttributeType=Ref(hashkeytype)
),
AttributeDefinition(
AttributeName="sqsMessageId",
AttributeType="S"
),
AttributeDefinition(
AttributeName="system",
AttributeType="S"
),`enter code here`
AttributeDefinition(
AttributeName=Ref(sortkeyname),
AttributeType=Ref(sortkeytype)
),
AttributeDefinition(
AttributeName="text",
AttributeType="S"
),
AttributeDefinition(
AttributeName="ttl",
AttributeType="N"
)
],
KeySchema=[
KeySchema(
AttributeName=Ref(hashkeyname),
KeyType="HASH"
),
KeySchema(
AttributeName=Ref(sortkeyname),
KeyType="RANGE"
)
],
TimeToLiveSpecification=Ref(ttlspec)
))
TimeToLiveSpecification 是一个 Class,需要在顶部导入。 Docs here.