@mapbox/cloudfriend
Version:
Helper functions for assembling CloudFormation templates in JavaScript
91 lines • 2.44 kB
JSON
{
"AWSTemplateFormatVersion": "2010-09-09",
"Metadata": {},
"Parameters": {},
"Rules": {},
"Mappings": {},
"Conditions": {
"Always": {
"Fn::Equals": [
"1",
"1"
]
}
},
"Resources": {
"AnotherThing": {
"Type": "AWS::SNS::Topic"
},
"MyTable": {
"Type": "AWS::Glue::Table",
"Condition": "Always",
"DependsOn": "AnotherThing",
"Properties": {
"CatalogId": "1234",
"DatabaseName": "my_database",
"TableInput": {
"Description": "my_view description",
"Name": "my_view",
"Owner": "Team",
"Parameters": {
"table": "params"
},
"PartitionKeys": [],
"Retention": 12,
"TableType": "EXTERNAL_TABLE",
"ViewExpandedText": "/* Presto View */",
"ViewOriginalText": {
"Fn::Sub": [
"/* Presto View: ${view} */",
{
"view": {
"Fn::Base64": {
"Fn::Sub": [
"{\"catalog\":\"awsdatacatalog\",\"schema\":\"${DatabaseName}\",\"originalSql\":\"SELECT * FROM another.table\",\"columns\":[{\"name\":\"column\",\"type\":\"varchar\"}]}",
{
"DatabaseName": "my_database",
"env": {
"Ref": "AWS::StackName"
}
}
]
}
}
}
]
},
"StorageDescriptor": {
"BucketColumns": [
"column"
],
"Columns": [
{
"Name": "column",
"Type": "string"
}
],
"Compressed": true,
"InputFormat": "fake.input.format",
"Location": "s3://fake/location",
"NumberOfBuckets": 0,
"OutputFormat": "fake.output.format",
"Parameters": {
"storage": "parameters"
},
"SerdeInfo": {
"SerializationLibrary": "fake.serde"
},
"SortColumns": [
{
"Column": "column",
"SortOrder": 0
}
],
"StoredAsSubDirectories": false
}
}
}
}
},
"Outputs": {}
}