Skip to content
This repository has been archived by the owner on Oct 17, 2024. It is now read-only.

Commit

Permalink
fix(schema): CloudFormation Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
PaulMaddox committed Nov 11, 2020
1 parent f180b24 commit df40aa0
Show file tree
Hide file tree
Showing 11 changed files with 550 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ type LaunchTemplate_CapacityReservationTarget struct {
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html#cfn-ec2-launchtemplate-capacityreservationtarget-capacityreservationid
CapacityReservationId string `json:"CapacityReservationId,omitempty"`

// CapacityReservationResourceGroupArn AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-capacityreservationtarget.html#cfn-ec2-launchtemplate-capacityreservationtarget-capacityreservationresourcegrouparn
CapacityReservationResourceGroupArn string `json:"CapacityReservationResourceGroupArn,omitempty"`

// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`

Expand Down
10 changes: 10 additions & 0 deletions cloudformation/ec2/aws-ec2-launchtemplate_networkinterface.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ import (
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html
type LaunchTemplate_NetworkInterface struct {

// AssociateCarrierIpAddress AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatecarrieripaddress
AssociateCarrierIpAddress bool `json:"AssociateCarrierIpAddress,omitempty"`

// AssociatePublicIpAddress AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatepublicipaddress
Expand Down Expand Up @@ -48,6 +53,11 @@ type LaunchTemplate_NetworkInterface struct {
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-ipv6addresses
Ipv6Addresses []LaunchTemplate_Ipv6Add `json:"Ipv6Addresses,omitempty"`

// NetworkCardIndex AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkcardindex
NetworkCardIndex int `json:"NetworkCardIndex,omitempty"`

// NetworkInterfaceId AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-networkinterfaceid
Expand Down
10 changes: 10 additions & 0 deletions cloudformation/s3/aws-s3-bucket.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,11 @@ type Bucket struct {
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig
CorsConfiguration *Bucket_CorsConfiguration `json:"CorsConfiguration,omitempty"`

// IntelligentTieringConfigurations AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-intelligenttieringconfigurations
IntelligentTieringConfigurations []Bucket_IntelligentTieringConfiguration `json:"IntelligentTieringConfigurations,omitempty"`

// InventoryConfigurations AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-inventoryconfigurations
Expand Down Expand Up @@ -78,6 +83,11 @@ type Bucket struct {
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockenabled
ObjectLockEnabled bool `json:"ObjectLockEnabled,omitempty"`

// OwnershipControls AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-ownershipcontrols
OwnershipControls *Bucket_OwnershipControls `json:"OwnershipControls,omitempty"`

// PublicAccessBlockConfiguration AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration
Expand Down
55 changes: 55 additions & 0 deletions cloudformation/s3/aws-s3-bucket_intelligenttieringconfiguration.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package s3

import (
"github.com/awslabs/goformation/v4/cloudformation/policies"
)

// Bucket_IntelligentTieringConfiguration AWS CloudFormation Resource (AWS::S3::Bucket.IntelligentTieringConfiguration)
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html
type Bucket_IntelligentTieringConfiguration struct {

// Id AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-id
Id string `json:"Id,omitempty"`

// Prefix AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-prefix
Prefix string `json:"Prefix,omitempty"`

// Status AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-status
Status string `json:"Status,omitempty"`

// TagFilters AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tagfilters
TagFilters []Bucket_TagFilter `json:"TagFilters,omitempty"`

// Tierings AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tierings
Tierings []Bucket_Tiering `json:"Tierings,omitempty"`

// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`

// AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy
AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"`

// AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource
AWSCloudFormationDependsOn []string `json:"-"`

// AWSCloudFormationMetadata stores structured data associated with this resource
AWSCloudFormationMetadata map[string]interface{} `json:"-"`

// AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created
AWSCloudFormationCondition string `json:"-"`
}

// AWSCloudFormationType returns the AWS CloudFormation resource type
func (r *Bucket_IntelligentTieringConfiguration) AWSCloudFormationType() string {
return "AWS::S3::Bucket.IntelligentTieringConfiguration"
}
35 changes: 35 additions & 0 deletions cloudformation/s3/aws-s3-bucket_ownershipcontrols.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package s3

import (
"github.com/awslabs/goformation/v4/cloudformation/policies"
)

// Bucket_OwnershipControls AWS CloudFormation Resource (AWS::S3::Bucket.OwnershipControls)
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html
type Bucket_OwnershipControls struct {

// Rules AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html#cfn-s3-bucket-ownershipcontrols-rules
Rules []Bucket_OwnershipControlsRule `json:"Rules,omitempty"`

// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`

// AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy
AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"`

// AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource
AWSCloudFormationDependsOn []string `json:"-"`

// AWSCloudFormationMetadata stores structured data associated with this resource
AWSCloudFormationMetadata map[string]interface{} `json:"-"`

// AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created
AWSCloudFormationCondition string `json:"-"`
}

// AWSCloudFormationType returns the AWS CloudFormation resource type
func (r *Bucket_OwnershipControls) AWSCloudFormationType() string {
return "AWS::S3::Bucket.OwnershipControls"
}
35 changes: 35 additions & 0 deletions cloudformation/s3/aws-s3-bucket_ownershipcontrolsrule.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package s3

import (
"github.com/awslabs/goformation/v4/cloudformation/policies"
)

// Bucket_OwnershipControlsRule AWS CloudFormation Resource (AWS::S3::Bucket.OwnershipControlsRule)
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html
type Bucket_OwnershipControlsRule struct {

// ObjectOwnership AWS CloudFormation Property
// Required: false
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html#cfn-s3-bucket-ownershipcontrolsrule-objectownership
ObjectOwnership string `json:"ObjectOwnership,omitempty"`

// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`

// AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy
AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"`

// AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource
AWSCloudFormationDependsOn []string `json:"-"`

// AWSCloudFormationMetadata stores structured data associated with this resource
AWSCloudFormationMetadata map[string]interface{} `json:"-"`

// AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created
AWSCloudFormationCondition string `json:"-"`
}

// AWSCloudFormationType returns the AWS CloudFormation resource type
func (r *Bucket_OwnershipControlsRule) AWSCloudFormationType() string {
return "AWS::S3::Bucket.OwnershipControlsRule"
}
40 changes: 40 additions & 0 deletions cloudformation/s3/aws-s3-bucket_tiering.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package s3

import (
"github.com/awslabs/goformation/v4/cloudformation/policies"
)

// Bucket_Tiering AWS CloudFormation Resource (AWS::S3::Bucket.Tiering)
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html
type Bucket_Tiering struct {

// AccessTier AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-accesstier
AccessTier string `json:"AccessTier,omitempty"`

// Days AWS CloudFormation Property
// Required: true
// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-days
Days int `json:"Days"`

// AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy
AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"`

// AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy
AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"`

// AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource
AWSCloudFormationDependsOn []string `json:"-"`

// AWSCloudFormationMetadata stores structured data associated with this resource
AWSCloudFormationMetadata map[string]interface{} `json:"-"`

// AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created
AWSCloudFormationCondition string `json:"-"`
}

// AWSCloudFormationType returns the AWS CloudFormation resource type
func (r *Bucket_Tiering) AWSCloudFormationType() string {
return "AWS::S3::Bucket.Tiering"
}
90 changes: 90 additions & 0 deletions schema/cloudformation.go
Original file line number Diff line number Diff line change
Expand Up @@ -26671,6 +26671,9 @@ var CloudformationSchema = `{
"properties": {
"CapacityReservationId": {
"type": "string"
},
"CapacityReservationResourceGroupArn": {
"type": "string"
}
},
"type": "object"
Expand Down Expand Up @@ -26930,6 +26933,9 @@ var CloudformationSchema = `{
"AWS::EC2::LaunchTemplate.NetworkInterface": {
"additionalProperties": false,
"properties": {
"AssociateCarrierIpAddress": {
"type": "boolean"
},
"AssociatePublicIpAddress": {
"type": "boolean"
},
Expand Down Expand Up @@ -26960,6 +26966,9 @@ var CloudformationSchema = `{
},
"type": "array"
},
"NetworkCardIndex": {
"type": "number"
},
"NetworkInterfaceId": {
"type": "string"
},
Expand Down Expand Up @@ -69347,6 +69356,12 @@ var CloudformationSchema = `{
"CorsConfiguration": {
"$ref": "#/definitions/AWS::S3::Bucket.CorsConfiguration"
},
"IntelligentTieringConfigurations": {
"items": {
"$ref": "#/definitions/AWS::S3::Bucket.IntelligentTieringConfiguration"
},
"type": "array"
},
"InventoryConfigurations": {
"items": {
"$ref": "#/definitions/AWS::S3::Bucket.InventoryConfiguration"
Expand Down Expand Up @@ -69374,6 +69389,9 @@ var CloudformationSchema = `{
"ObjectLockEnabled": {
"type": "boolean"
},
"OwnershipControls": {
"$ref": "#/definitions/AWS::S3::Bucket.OwnershipControls"
},
"PublicAccessBlockConfiguration": {
"$ref": "#/definitions/AWS::S3::Bucket.PublicAccessBlockConfiguration"
},
Expand Down Expand Up @@ -69636,6 +69654,38 @@ var CloudformationSchema = `{
],
"type": "object"
},
"AWS::S3::Bucket.IntelligentTieringConfiguration": {
"additionalProperties": false,
"properties": {
"Id": {
"type": "string"
},
"Prefix": {
"type": "string"
},
"Status": {
"type": "string"
},
"TagFilters": {
"items": {
"$ref": "#/definitions/AWS::S3::Bucket.TagFilter"
},
"type": "array"
},
"Tierings": {
"items": {
"$ref": "#/definitions/AWS::S3::Bucket.Tiering"
},
"type": "array"
}
},
"required": [
"Id",
"Status",
"Tierings"
],
"type": "object"
},
"AWS::S3::Bucket.InventoryConfiguration": {
"additionalProperties": false,
"properties": {
Expand Down Expand Up @@ -69828,6 +69878,30 @@ var CloudformationSchema = `{
},
"type": "object"
},
"AWS::S3::Bucket.OwnershipControls": {
"additionalProperties": false,
"properties": {
"Rules": {
"items": {
"$ref": "#/definitions/AWS::S3::Bucket.OwnershipControlsRule"
},
"type": "array"
}
},
"required": [
"Rules"
],
"type": "object"
},
"AWS::S3::Bucket.OwnershipControlsRule": {
"additionalProperties": false,
"properties": {
"ObjectOwnership": {
"type": "string"
}
},
"type": "object"
},
"AWS::S3::Bucket.PublicAccessBlockConfiguration": {
"additionalProperties": false,
"properties": {
Expand Down Expand Up @@ -70208,6 +70282,22 @@ var CloudformationSchema = `{
],
"type": "object"
},
"AWS::S3::Bucket.Tiering": {
"additionalProperties": false,
"properties": {
"AccessTier": {
"type": "string"
},
"Days": {
"type": "number"
}
},
"required": [
"AccessTier",
"Days"
],
"type": "object"
},
"AWS::S3::Bucket.TopicConfiguration": {
"additionalProperties": false,
"properties": {
Expand Down
Loading

0 comments on commit df40aa0

Please sign in to comment.