Đây là (phần DynamoDB của) JSON do Troposphere tạo của tôi:
"sandbox": {
"Properties": {
"AttributeDefinitions": [
{
"AttributeName": "audit_id",
"AttributeType": "S"
},
{
"AttributeName": "status",
"AttributeType": "S"
},
{
"AttributeName": "filename",
"AttributeType": "S"
},
{
"AttributeName": "file_detected_dt",
"AttributeType": "S"
},
{
"AttributeName": "time_taken",
"AttributeType": "N"
},
{
"AttributeName": "number_rows_processed_file",
"AttributeType": "N"
},
{
"AttributeName": "number_rows_created_db",
"AttributeType": "N"
},
{
"AttributeName": "info_messages",
"AttributeType": "S"
}
],
"KeySchema": [
{
"AttributeName": "audit_id",
"KeyType": "HASH"
}
],
"ProvisionedThroughput": {
"ReadCapacityUnits": {
"Ref": "ReadCapacityUnits"
},
"WriteCapacityUnits": {
"Ref": "WriteCapacityUnits"
}
}
},
"Type": "AWS::DynamoDB::Table"
}
CloudFormation mang lại cho tôi lỗi này trên cố gắng để quay lên VPC: Property AttributeDefinitions is inconsistent with the KeySchema of the table and the secondary indexes
.
Nhưng nó là? Tôi đang chỉ định audit_id
là một khóa duy nhất và nó chắc chắn tồn tại trong danh sách Định nghĩa thuộc tính. Tôi rất mới với CF (và Dynamo, về vấn đề đó) nên tôi có thể đang thiếu một thứ gì đó cực kỳ rõ ràng, nhưng nó không rõ ràng với tôi vào lúc này.
Tôi đã tìm kiếm xung quanh và chỉ thực sự tìm thấy một lần đề cập đến lỗi này và nó liên quan nhiều hơn đến một lớp giữa nhà phát triển và CF, hơn là bản thân CF.
Bất cứ ai có thể chỉ ra những gì sai với mẫu của tôi?