Skip to content

Commit

Permalink
CloudFormation Template Schema upgrade (#359)
Browse files Browse the repository at this point in the history
  • Loading branch information
3 people authored Dec 13, 2023
1 parent 95c618b commit 028944a
Show file tree
Hide file tree
Showing 25 changed files with 850 additions and 226 deletions.
38 changes: 36 additions & 2 deletions server/schema/resources.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -3299,6 +3299,37 @@
],
"additionalProperties": false
},
"AWS_CloudFront_KeyValueStore": {
"type": "object",
"markdownDescription": "Resource Type definition for AWS::CloudFront::KeyValueStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)",
"allOf": [
{
"type": "object",
"properties": {
"Type": {
"type": "string",
"enum": [
"AWS::CloudFront::KeyValueStore"
],
"markdownEnumDescriptions": [
"Resource Type definition for AWS::CloudFront::KeyValueStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)"
]
},
"Properties": {
"$ref": "resources/aws-cloudfront-keyvaluestore.json"
}
},
"required": [
"Type",
"Properties"
]
},
{
"$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes"
}
],
"additionalProperties": false
},
"AWS_DAX_SubnetGroup": {
"type": "object",
"markdownDescription": "Resource Type definition for AWS::DAX::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html)",
Expand Down Expand Up @@ -16100,7 +16131,7 @@
},
"AWS_Lambda_EventInvokeConfig": {
"type": "object",
"markdownDescription": "Resource Type definition for AWS::Lambda::EventInvokeConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)",
"markdownDescription": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)",
"allOf": [
{
"type": "object",
Expand All @@ -16111,7 +16142,7 @@
"AWS::Lambda::EventInvokeConfig"
],
"markdownEnumDescriptions": [
"Resource Type definition for AWS::Lambda::EventInvokeConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)"
"The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)"
]
},
"Properties": {
Expand Down Expand Up @@ -36843,6 +36874,9 @@
{
"$ref": "#/definitions/AWS_CloudFormation_WaitConditionHandle"
},
{
"$ref": "#/definitions/AWS_CloudFront_KeyValueStore"
},
{
"$ref": "#/definitions/AWS_DAX_SubnetGroup"
},
Expand Down
34 changes: 6 additions & 28 deletions server/schema/resources/aws-autoscaling-autoscalinggroup.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,20 +43,7 @@
"permissions": [
"autoscaling:*",
"cloudwatch:PutMetricAlarm",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeImages",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeInstanceTypeOfferings",
"ec2:DescribeKeyPairs",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribePlacementGroups",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSubnets",
"ec2:DescribeVpcClassicLink",
"ec2:Describe*",
"ec2:GetInstanceTypesFromInstanceRequirements",
"ec2:RunInstances",
"elasticloadbalancing:DescribeLoadBalancers",
Expand All @@ -73,20 +60,7 @@
"permissions": [
"autoscaling:*",
"cloudwatch:PutMetricAlarm",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeImages",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstances",
"ec2:DescribeInstanceTypes",
"ec2:DescribeInstanceTypeOfferings",
"ec2:DescribeKeyPairs",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribePlacementGroups",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSubnets",
"ec2:DescribeVpcClassicLink",
"ec2:Describe*",
"ec2:GetInstanceTypesFromInstanceRequirements",
"ec2:RunInstances",
"elasticloadbalancing:DescribeLoadBalancers",
Expand Down Expand Up @@ -644,6 +618,10 @@
"$ref": "#/definitions/TotalLocalStorageGBRequest"
}
},
"required": [
"MemoryMiB",
"VCpuCount"
],
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
}
},
Expand Down
3 changes: 2 additions & 1 deletion server/schema/resources/aws-cloud9-environmentec2.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
},
"ImageId": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement"
"markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement"
},
"SubnetId": {
"type": "string",
Expand Down Expand Up @@ -93,6 +93,7 @@
}
},
"required": [
"ImageId",
"InstanceType"
],
"createOnlyProperties": [
Expand Down
109 changes: 109 additions & 0 deletions server/schema/resources/aws-cloudfront-keyvaluestore.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
{
"additionalProperties": false,
"definitions": {
"ImportSource": {
"additionalProperties": false,
"properties": {
"SourceType": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption"
},
"SourceArn": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption"
}
},
"required": [
"SourceType",
"SourceArn"
],
"type": "object",
"markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption"
}
},
"description": "Resource Type definition for AWS::CloudFront::KeyValueStore",
"handlers": {
"create": {
"permissions": [
"cloudfront:CreateKeyValueStore",
"cloudfront:DescribeKeyValueStore",
"s3:GetObject",
"s3:HeadObject",
"s3:GetBucketLocation"
]
},
"delete": {
"permissions": [
"cloudfront:DeleteKeyValueStore",
"cloudfront:DescribeKeyValueStore"
]
},
"list": {
"permissions": [
"cloudfront:ListKeyValueStores"
]
},
"read": {
"permissions": [
"cloudfront:DescribeKeyValueStore"
]
},
"update": {
"permissions": [
"cloudfront:UpdateKeyValueStore",
"cloudfront:DescribeKeyValueStore"
]
}
},
"properties": {
"Name": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement"
},
"Comment": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
},
"ImportSource": {
"$ref": "#/definitions/ImportSource"
}
},
"primaryIdentifier": [
"/properties/Name"
],
"createOnlyProperties": [
"/properties/Name"
],
"readOnlyProperties": [
"/properties/Arn",
"/properties/Id",
"/properties/Status"
],
"writeOnlyProperties": [
"/properties/ImportSource"
],
"required": [
"Name"
],
"tagging": {
"cloudFormationSystemTags": false,
"tagOnCreate": false,
"tagUpdatable": false,
"taggable": false
},
"typeName": "AWS::CloudFront::KeyValueStore",
"attributes": {
"Arn": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
},
"Id": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
},
"Status": {
"type": "string",
"markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption"
}
}
}
Loading

0 comments on commit 028944a

Please sign in to comment.